<?php
/**[系统管理员控制器]
 * @Author: 976123967@qq.com
 * @Date:   2014-08-16 15:04:03
 * @Last Modified by:   chen
 * @Last Modified time: 2014-10-28 22:30:26
 */

class AdminAction extends PublicAction{
 	public function _initialize()
	{
		parent::_initialize();
		$this->model = D('User');
	}

	/**
	 * [info 个人信息]
	 * @return [type] [description]
	 */
	public function info()
	{
		// post
		if(IS_POST)
		{
			// 更新
			if(!$this->model->update_info())
				$this->error($this->model->getError(),U('Admin/info'));
			$this->success('个人信息修改成功',U('Admin/info'));
			die;
		}

		// 读取
		$uid = session('uid');
		$data = $this->model->find_one($uid);
		// 分配
		$this->assign('data',$data);
		// 显示
		$this->display();
	}

	/** [change 修改密码] */
	public function change()
	{

		// post
		if(IS_POST)
		{
			// 更新
			if(!$this->model->update_password())
				$this->error($this->model->getError(),U('Admin/change'));
			$this->success('密码修改成功',U('Admin/change'));
			die;
		}
		// 显示
		$this->display();
	}


	/**
	 * [index 管理员列表]
	 * @return [type] [description]
	 */
	public function index()
	{
		// 读取
		$data = $this->model->get_admin();
		// 分页
		if($data)
		{
			$this->assign('page',$data['page']);
			unset($data['page']);
		}
		// 分配
		$this->assign('data',$data);
		// 显示
		$this->display();
	}

	/**
	 * [add 添加]
	 */
	public function add()
	{

		if(IS_POST)
		{
			// 验证
			if(!$this->model->create())
				$this->error($this->model->getError());
			// 添加
			$this->model->add_user();
			// 提示
			$this->success('管理员添加成功',U('Admin/index'));
			die;
		}
		$this->display();

	}
	/**
	 * [del 删除]
	 * @return [type] [description]
	 */
	public function del()
	{

		$uid = I('get.uid');
		if(!$uid) _404('用户信息错误',U('Index/welecome'));
		if(!$this->model->del_user($uid))
			$this->error($this->model->getError());
		$this->success('用户删除成功',U('admin/index'));
	}


	/**
	 * [edit 编辑]
	 * @return [type] [description]
	 */
	public function  edit()
	{
		
		if(IS_POST)
		{
			// 验证
			if(!$this->model->create())
				$this->error($this->model->getError());
			// 添加
			$this->model->save_user();
			// 提示
			$this->success('管理员信息更新成功',U('Admin/index'));
			die;
		}
		$uid = I('get.uid');
		if(!$uid) _404('用户信息错误',U('Index/welecome'));
		$field = $this->model->find_one($uid);
		$this->assign('field',$field);
		$this->display();
	}

	/**
	 * [update 更新]
	 * @return [type] [description]
	 */
	public function update()
	{

		$url=U('Admin/index');
		//执行操作
		switch (true) 
		{
			case isset($_POST['lock']):
				if(!$this->model->update_lock(1))
					$this->error($this->model->getError(),$url);
				$this->success('锁定成功',$url);
				break;

			case isset($_POST['cancel_lock']):
				if(!$this->model->update_lock(0))
					$this->error($this->model->getError(),$url);
				$this->success('解锁成功',$url);
				break;

			case isset($_POST['del_check']):
				if(!$this->model->delete_check())
					$this->error($this->model->getError(),$url);
				$this->success('删除成功',$url);
				break;
			default:
				$this->error('动作选择错误',$url);
		}

	}


}